Conversation
Reviewed latest changes (fb1882c). All previously flagged issues remain resolved. No new issues found.
Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues. |
d05f61c to
1798915
Compare
There was a problem hiding this comment.
Pull request overview
This PR integrates the audit module from the Lumera blockchain (v1.11.0-rc) into the Supernode, introducing epoch-based storage challenge functionality and host reporting capabilities. The changes replace the legacy metrics reporting system with a new audit-driven architecture that submits evidence and epoch reports on-chain.
Changes:
- Upgraded Lumera dependency from v1.10.0 to v1.11.0-rc across all modules
- Added audit module integration (query and message modules) to the Lumera client
- Implemented storage challenge service with deterministic selection, gRPC handlers, and evidence submission
- Added host reporter service for epoch-scoped reporting (replacing legacy metrics collector)
- Introduced cascade client failure evidence submission in the SDK
Reviewed changes
Copilot reviewed 46 out of 50 changed files in this pull request and generated 10 comments.
Show a summary per file
| File | Description |
|---|---|
| go.mod, tests/system/go.mod, sn-manager/go.mod, cmd/sncli/go.mod | Bumped lumera dependency to v1.11.0-rc |
| go.sum, tests/system/go.sum, sn-manager/go.sum, cmd/sncli/go.sum | Updated checksums for new lumera version |
| pkg/lumera/interface.go, pkg/lumera/client.go | Added Audit() and AuditMsg() module accessors |
| pkg/lumera/modules/audit/*.go | New audit query module implementation |
| pkg/lumera/modules/audit_msg/*.go | New audit transaction module with evidence/report submission |
| supernode/storage_challenge/service.go | Core storage challenge service with epoch-driven execution |
| supernode/storage_challenge/README.md | Documentation for storage challenge protocol |
| supernode/transport/grpc/storage_challenge/handler.go | gRPC handlers for GetSliceProof and VerifySliceProof |
| supernode/host_reporter/service.go | Epoch report submission with port probing |
| pkg/storagechallenge/deterministic/*.go | Deterministic selection algorithms for challengers/files |
| supernode/config/*.go, supernode/config.yml | Added StorageChallengeConfig with defaults |
| supernode/cmd/start.go | Replaced metrics collector with host reporter and storage challenge services |
| sdk/task/evidence.go, sdk/adapters/lumera/adapter.go | Cascade failure evidence submission |
| proto/supernode/storage_challenge.proto | Protobuf definitions for storage challenge service |
| gen/supernode/storage_challenge*.go | Generated gRPC and protobuf code |
| pkg/testutil/lumera.go | Added mock audit modules to test utilities |
| tests/integration/securegrpc/secure_connection_test.go | Fixed test isolation by moving keyring creation into loop |
| .github/workflows/*.yml, .github/actions/setup-env/action.yml | Commented out bust_lumera_retag parameter |
| Makefile | Added storage_challenge.proto to generation targets |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.